The Open Systems Interconnection model (OSI model) is a conceptual model that characterizes and standardizes the communication functions of a telecommunication or computing system without regard to its underlying internal structure and technology. The OSI model partitions a communication system into abstraction layers. The original version of the model defined seven layers.
The OSI model is hierarchical, in that a layer serves the layer above it and is served by the layer below it. For example, a layer that provides error-free communications across a network provides the path needed by the layer(s) above it, and uses the next lower layer to send and receive packets that are transported through that path.
Layer-2 of the OSI model is also referred to as the Data Link Layer, and provides node-to-node data transfer. That is, a link between two directly connected nodes. Among other things, the Data Link Layer defines the protocol(s) to establish and terminate a connection between two physically connected devices, and for flow control between them. The Data Link Layer also detects and possibly corrects errors that may occur in the physical layer (layer 1 of the OSI model), for example by means of Forward Error Correction (FEC).
Other conceptual models for characterizing and standardizing the communication functions of a telecommunication or computing system are known. Some of these conceptual models utilize a layered hierarchy, while others do not. However, in all cases, the network model provides functionality corresponding to that of the OSI layer-2 data link layer. Accordingly, it will be appreciated that references in the present disclosure to the OSI layer-2, or layer-2 functions, are not strictly limited to the OSI model, but instead also apply to equivalent conceptual abstractions and functionality in other networking models.
It is common to define a Maximum Transmission Unit (MTU), which is the largest size of data packet (layer 3 or higher) that can be transmitted by a Layer-2 interface without fragmentation. The size of the MTU can be varied by a network administrator, and is typically different for different protocols. For example, for Ethernet, the MTU is typically defined as 1500 byes, whereas for SONET/SDH, the MTU is typically set as 4470 bytes. Both Ethernet and SONET/SDH are capable of handling larger packets, but this is accomplished by fragmenting the packets across multiple protocol data units (PDU) at the transmitting end of a link, and then reassembling the packet at the receiving end of the link.
At OSI layers 3 and above, it is known to dynamically define the size of the MTU, so that it can be adjusted to avoid fragmentation at layer-2, for example. However, within Layer-2, the MTU size is manually defined, and remains fixed during operation of the network.
As will be appreciated, a larger MTU in layer-2 is preferred for carrying large data packets, because the larger MTU implies less fragmentation, and therefore lower latency. However, it has been found that increasing the MTU size can have the effect of blocking small size short burst packets. This can be problematic in cases where the small packets are also time sensitive. On the other hand, reducing the size of the MTU can degrade network performance due to a large number of concatenated frames. Consequently, network administrators generally adopt a compromise MTU size, such as the 1500 byte Ethernet MTU and the 4470 byte SONET/SDH MTU described above.
To ensure the Quality of Service (QoS) of time-sensitive traffic, there are currently two approaches used, namely: Fragmentation and interleaving; and Frame Preemption.
Fragmentation and interleaving is typically applied on Layer-2 at the source end of a link. Examples of this technique include Multi-link Point-to-Point Protocol (PPP) and Flex Ethernet. Fragmentation and interleaving is also applied on Layer 3 at the source node of a path, and is similar to IP fragmentation. This approach is software based and applied to pre-defined types of traffic according to pre-configured policies. As such, this represents a static solution, which cannot adjust as traffic flows and network performance change over time.
Frame preemption is also known as Time-sensitive networking. In this method, the sending node pauses the transmission of non-time sensitive frames in order to transmit time-sensitive ones. This approach is typically implemented at the physical layer (OSI layer 1) using special equipment designed for the purpose.
Thus the static solution has a technical problem to be solved.